package jschool.modelos;

import javax.swing.table.AbstractTableModel;

import jschool.entidades.Colegio;
import jschool.manejadores.ManejadorDeColegio;

public class ModeloColegio extends AbstractTableModel {
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private static ModeloColegio instancia = null;
	private String[] encabezado = new String[]{"Direccion","E-Mail","Fax","Nombre","Telefono-1","Telefono-2","Web"};
	private Colegio colegio;
	private ManejadorDeColegio manejador;
	
	public static ModeloColegio getInstancia(){
		if(instancia==null){
			instancia= new ModeloColegio();
		}
		return instancia;
	}
	
	private ModeloColegio(){
		manejador = ManejadorDeColegio.getInstancia();
	}

	
	public String getColumnName(int posicion){
		return encabezado[posicion];
	}
	
	public int getColumnCount() {
		
		return encabezado.length;
	}

	@Override
	public int getRowCount() {
		
		return manejador.getColegio().size();
	}

	@Override
	public Object getValueAt(int fila, int columna) {
		colegio = manejador.getColegio().get(fila);
		String retorno = "";
		switch(columna){
		case 0:
			retorno = colegio.getDireccion();
			break;
		case 1:
			retorno = colegio.getEmail();
		break;
		case 2:
			retorno = colegio.getFax();
			break;
		case 3:
			retorno = colegio.getLogo();
		case 4:
			retorno = colegio.getNombre();
			break;
		case 5:
			retorno = colegio.getTelefono1();
			break;
		case 6:
			retorno = colegio.getTelefono2();
			break;
		case 7:
			retorno = colegio.getWeb();
			break;
		
		}
		
		
		return retorno;
	}
	
	public void setValueAt(Object valor, int fila, int columna){
		colegio = manejador.getColegio().get(fila);
		switch(columna){
		case 0:
			colegio.setDireccion((String)valor);
			break;
		case 1:
			colegio.setEmail((String)valor);
			break;
		case 2:
			colegio.setFax((String)valor);
			break;
		case 3:
			colegio.setLogo((String)valor);
			break;
		case 4:
			colegio.setNombre((String)valor);
			break;
		case 5:
			colegio.setTelefono1((String)valor);
			break;
		case 6:
			colegio.setTelefono2((String)valor);
			break;
		case 7:
			colegio.setWeb((String)valor);
			break;
		}
	}
	
	
}
